var token = 'moyu_token';//本地token值
var toast_short = 2000;//弹窗时间短
var toast_long = 3000;//弹窗时间长

var API_SERVER = 'https://t1.uma.com/';
var sucCode = 2000;//请求成功code
var loginFailCode = 1015;//登录异常code

/**
 * GET请求
 */
function httpGet(req) {
	wx.getStorage({
		key: token,
		success: function (res) {
			var token = res.data;
			if (token != null) {
				console.log(API_SERVER + req.url + '?' + req.param);
				wx.request({
					url: API_SERVER + req.url + '?_tk=' + token + '&' + req.param,
					complete: function (msg) {
						req.complete(msg);
					},
					success: function (result) {
						if (result.statusCode == 200) {//接口调用返回伟200的时候才代表成功
							// req.success(result);
							if (result.data.code == sucCode) {
								//成功直接将数据返回给页面
								req.success(result);
							} else if (result.data.code == loginFailCode) {
								//登录异常时重启应用到登录页面进行登录
								wx.showToast({
									title: '登录失效',
									duration: toast_short
								})
								//延时执行页面跳转 为了提示登录成功 好看
								setTimeout(function () {
									wx.reLaunch({
										url: '../loading/loading',
									})
								}, toast_short);
							} else {
								//弹窗提示不友好，自己做记录出来
								// wx.showModal({
								// 	title: '错误提示',
								// 	content: '错误码：' + result.data.code + ' / ' + '错误信息：' + result.data.sucinfo,
								// 	showCancel: false,
								// 	confirmText: '我知道了',
								// })
								console.log('http : ' + '错误码：' + result.data.code + ' / ' + '错误信息：' + result.data.sucinfo);
								//其他的code码返回到页面自行处理
								req.success(result);
							}
						} else {
							//弹窗提示不友好，自己做记录出来
							// wx.showModal({
							// 	title: '错误提示',
							// 	content: '错误码：' + result.statusCode + ' / ' + '错误信息：' + result.errMsg,
							// 	showCancel: false,
							// 	confirmText: '我知道了',
							// })
							console.log('http : ' + '错误码：' + result.statusCode + ' / ' + '错误信息：' + result.errMsg);
						}	
					},
					fail: function (e) {
						req.fail(e);
					}
				})
			} else {
				//获取不到本地token需要重新去登录
				wx.showToast({
					title: '登录失效',
					duration: toast_short
				})
				//延时执行页面跳转 为了提示登录成功 好看
				setTimeout(function () {
					wx.reLaunch({
						url: '../loading/loading',
					})
				}, toast_short);
			}
		},
		fail: function (e) {
			//获取不到本地token需要重新去登录
			wx.showToast({
				title: '登录失效',
				duration: toast_short
			})
			//延时执行页面跳转 为了提示登录成功 好看
			setTimeout(function () {
				wx.reLaunch({
					url: '../loading/loading',
				})
			}, toast_short);
		}
	})
};

/**
 * POST请求
 */
function httpPost(req) {
	wx.getStorage({
		key: token,
		success: function (res) {
			var token = res.data;
			if (token != null) {
				req.param['_tk'] = '' + token;//在这里赋值token
				wx.request({
					url: API_SERVER + req.url,
					data: req.param,
					header: {
						'content-type': 'application/x-www-form-urlencoded'
					},
					method: 'POST',
					complete: function (msg) {
						req.complete(msg);
					},
					success: function (result) {
						if (result.statusCode == 200){//接口调用返回伟200的时候才代表成功
							// req.success(result);
							if (result.data.code == sucCode) {
								//成功直接将数据返回给页面
								req.success(result);
							} else if (result.data.code == loginFailCode) {
								//登录异常时重启应用到登录页面进行登录
								wx.showToast({
									title: '登录失效',
									duration: toast_short
								})
								//延时执行页面跳转 为了提示登录成功 好看
								setTimeout(function () {
									wx.reLaunch({
										url: '../loading/loading',
									})
								}, toast_short);
							} else {
								//弹窗提示不友好，自己做记录出来
								// wx.showModal({
								// 	title: '错误提示',
								// 	content: '错误码：' + result.data.code + ' / ' + '错误信息：' + result.data.sucinfo,
								// 	showCancel: false,
								// 	confirmText: '我知道了',
								// })
								console.log('http : ' + '错误码：' + result.data.code + ' / ' + '错误信息：' + result.data.sucinfo);
								//其他的code码返回到页面自行处理
								req.success(result);
							}
						}else{
							//弹窗提示不友好，自己做记录出来
							// wx.showModal({
							// 	title: '错误提示',
							// 	content: '错误码：' + result.statusCode + ' / ' + '错误信息：' + result.errMsg,
							// 	showCancel: false,
							// 	confirmText: '我知道了',
							// })
							console.log('http : ' + '错误码：' + result.statusCode + ' / ' + '错误信息：' + result.errMsg);
						}	
					},
					fail: function (e) {
						//将接口调用不成功信息返回给页面
						req.fail(e);
					}
				})
			} else {
				//获取不到本地token需要重新去登录
				wx.showToast({
					title: '登录失效',
					duration: toast_short
				})
				//延时执行页面跳转 为了提示登录成功 好看
				setTimeout(function () {
					wx.reLaunch({
						url: '../loading/loading',
					})
				}, toast_short);
			}
		},
		fail: function (e) {
			//获取不到本地token需要重新去登录
			wx.showToast({
				title: '登录失效',
				duration: toast_short
			})
			//延时执行页面跳转 为了提示登录成功 好看
			setTimeout(function () {
				wx.reLaunch({
					url: '../loading/loading',
				})
			}, toast_short);
		}
	})
};

// 导出模块
module.exports = {
	get: httpGet,
	post: httpPost,
	toast_short: toast_short,
	toast_long: toast_long,
}